Final launch gate: CI hardening, log safety, full test coverage, shell completions#7
Merged
Conversation
- Remove hard-coded Go 1.21 from release workflow - Add release-dry-run CI job for artifact verification - Remove redundant actions/cache steps (use setup-go built-in cache) - Add build-release-artifacts.sh script feat: bound service log reads - Implement LogReader with configurable byte/line limits (256 KiB / 200 lines) - Add truncation notification for large files - Seek from end where practical; avoid full-file reads for large files fix: include completion command in shell completions - Remove exclusion of completion from commandNames() - Reject extra arguments with exit code 2 - Deduplicate command names defensively test: cover all 14 packages - app: exit codes, state dir, process checks, log reader (6 tests) - checks: success, empty command, nonexistent exec, save log (5 tests) - cli: completion generation, error handling, determinism (11 tests) - doctor: git check, state dir, worktree dir, result format (4 tests) - health: HTTP, TCP, timeout, wrong status, StatusError (7 tests) - process: start, stop, group, alive, format (10 tests) docs: correct audit document to reflect final state - Go 1.24 as declared version - 14/14 packages with tests (not 6 lacking) - include completion in command list - log safety implementation - correct CI/Go version reconciliation
…, harden release workflow - Use syscall.Signal(0x0) instead of os.Interrupt for process existence checks - Fix isProcessRunning in doctor and health checker to not send SIGINT - Rewrite process tests with deterministic child processes (sleep 60) - Add strict archive validation in release-dry-run (set -euo pipefail) - Remove continue-on-error from race tests in release workflow - Fix workflow_dispatch dry-run not requiring tag format - Use single build-release-artifacts.sh in all workflows
…Command('sleep')
- Replace sleep/sh-based process tests with TestHelperProcess pattern
- Use build tags (unix) for platform-specific process tests
- Signal process tests use SIGTERM-based helper with channels
- Remove sleep dependency in tests (not available in minimal CI images)
- Fix cross-platform build correctly
…DME vs README.md, leading slash)
…ence, fix build script output - Remove duplicate internal/doctor package (unreferenced dead code) - Update docs/audit.md with CI VERIFIED status for all 7 jobs - Update PR body with final CI results - Fix build script version regex to accept -dry-run suffix - Fix build script Windows archive output message (was printing .tar.gz for .zip)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Final pre-launch gate for TaskCapsule. All 7 CI jobs pass.
CI Results
Final commit: \3b0f7d
Workflow run: 30006669553
Changes
CI & Release
Code Fixes
Log Safety
Shell Completion
Local Validation
Remaining Limitations